package com.example.everying.service.chat;

import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.service.IService;
import com.example.everying.model.dto.chat.ChatMessagePageDto;
import com.example.everying.model.entity.chat.ChatMessagesEntity;
import com.example.everying.model.vo.chat.ChatCommentMessageVo;
import com.example.everying.model.vo.chat.ChatMessageVo;

import java.util.List;

public interface ChatMessagesService  extends IService<ChatMessagesEntity> {
    boolean validateRecallPermission(Long messageId, String userId);

    List<ChatMessageVo> getMessageList(ChatMessagePageDto query);

    ChatCommentMessageVo getCommentMessageList(ChatMessagePageDto query);

    ChatMessageVo convertToDTO(ChatMessagesEntity entity);

    void updateDeleteFlag(String commentId);
}
